The Domain Name System (DNS) is a hierarchical distributed naming system for computers, services, or any resource connected to the Internet. It associates various information with domain names assigned to each of the participating entities. Most prominently, it translates domain names, which can be easily memorized by humans, to numerical Internet Protocol (IP) addresses needed for the purpose of computer services and devices worldwide.
The DNS includes authoritative DNS servers (called DNS hosting services or name servers) that are responsible for translating domain names into IP addresses. DNS servers can also be arranged in hierarchies where each level of authoritative DNS server is responsible for a level of a domain. Whenever an application uses a domain name when requesting network services, a DNS hosting service receives the request and translates the domain name into the corresponding IP address. For example, the domain name “www.amazon.com” might translate to 114.859.214.141.
Cloud computing is the use of computing resources (hardware and software) which are available in a remote location and accessible over a network, such as the Internet. Users are able to buy these computing resources (including storage and computing power) as a utility on demand. Cloud computing entrusts remote services with a user's data, software and computation. Use of virtual computing resources can provide a number of advantages including cost advantages and/or ability to adapt rapidly to changing computing resource needs.
Customer applications running in a cloud environment desire to have control regarding how end users are routed to the customer applications. However, currently little control is provided. And when some customer control is allowed, such as through an API, the control is very specific to one function, which is inefficient and burdensome to the customers.